package com.bnz.listener;

import javax.servlet.annotation.WebListener;
import javax.servlet.http.HttpSessionAttributeListener;
import javax.servlet.http.HttpSessionBindingEvent;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;

/**
 * Session监听器
 */
@WebListener
public class MySessionListener implements HttpSessionListener, HttpSessionAttributeListener {
    /**
     * 1-2方法，是session对象的监控
     * @param se
     */
    // 1、session的创建
    @Override
    public void sessionCreated(HttpSessionEvent se) {
        System.out.println("(session)创建方法");
    }

    // 2、session的销毁
    @Override
    public void sessionDestroyed(HttpSessionEvent se) {
        System.out.println("(session)销毁方法");
    }

    /**
     * 3-5，session中，属性值改变时的监控
     * @param event
     */
    // 3、session属性值的添加
    @Override
    public void attributeAdded(HttpSessionBindingEvent event) {
        System.out.println("(session)属性值的添加");
    }

    // 4、session属性值的移除
    @Override
    public void attributeRemoved(HttpSessionBindingEvent event) {
        System.out.println("(session)属性值的移除");
    }

    // 5、session属性值的替换
    @Override
    public void attributeReplaced(HttpSessionBindingEvent event) {
        System.out.println("(session属性值的替换)");
    }

}
